/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package film.gestionnaires;

import film.modeles.entity.Acteur;
import film.modeles.entity.Realisateur;
import java.util.Collection;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import film.modeles.entity.Film;

/**
 *
 * @author MAZID
 */
@Stateless
public class GestionnaireFilms {
    @PersistenceContext

    // Add business logic below. (Right-click in editor and choose
    // "Insert Code > Add Business Method")
   
    private EntityManager em;
    
    //fonctions de crétion des entity 
    Realisateur realisateur;
    Acteur acteur;
    Film film;
    
  //les fonctions de la classe entity Film
    public Film ajouterUnFilm(String titre, String description, double prix, String resume, String image, String dateSortie, int quantite,
            String nomRea, String prenomRea, String descriptionRea,  Long idActeur,
            String nomActeur, String prenomActeur, String descripActeur){
        realisateur = creerUnRealisateur(nomRea, prenomRea, descriptionRea);
        acteur = creerUnActeur(idActeur, nomActeur, prenomActeur, descripActeur);
        //Film film = new Film(titre, description, prix, resume, image, dateSortie, quantite, realisateur, acteur);
        
        em.persist(film);
        return film;
    }
    public Collection<Film> getAllFilms(){
        Query q = em.createQuery("Select f from Film f");
        return q.getResultList();
    }
    
    
//les fonctions de l'entity Acteur
    public Acteur creerUnActeur(Long idActeur, String nomActeur, String prenomActeur, String descripActeur){
       Acteur acteur = new Acteur(idActeur, nomActeur, prenomActeur, descripActeur);
        return acteur;
    }
    
    public void modifierUnActeur(String nomActeur){
        
    }

    public void supprimerUnActeur(String nomActeur){
        
    }
    public Acteur rechercherUnActeur(String motClé){
        return null;
    }
    public Collection<Acteur> getAllActeurs(){
        return null;
    }
    
    
    
    
    //les fonctions de l'entity Realisateur
  
    public Realisateur creerUnRealisateur(String nomRea, String prenomRea, String descriptionRea){
        Realisateur reali = new Realisateur(nomRea, prenomRea, descriptionRea);
        return reali;
    }
    
    
    public void modifierUnRealisateur(String nomReal){
        
    }

    public void supprimerUnRealisateur(String nomReal){
        
    }
    public Acteur rechercherUnRealisateur(String motClé){
        return null;
    }
    public Collection<Acteur> getAllRealisateurs(){
        
        return null;
    }
    
    
}
